package cn.cai.pethome.logininfo.service;

import cn.cai.pethome.base.util.AjaxResult;
import cn.cai.pethome.logininfo.domain.Logininfo;
import cn.cai.pethome.base.service.IBaseService;
import cn.cai.pethome.user.dto.UserDto;

import javax.servlet.http.HttpSession;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author xiaocai
 * @since 2022-08-27
 */
public interface ILogininfoService extends IBaseService<Logininfo> {

    /**
     * 用户账号密码登录需要实现的代码
     * @param userDto  登录需要的对象
     * @param   登录成功 把当前登录用户信息保存在Session中
     * @return
     */
    AjaxResult accountLogin(UserDto userDto);

    /**
     * 通过code授权码换取access_token
     * @param code
     * @return
     */
    AjaxResult wechatLogin(String code);

    /**
     * 微信用户绑定手机号
     * @param userDto
     * @return
     */
    AjaxResult wechatUserBind(UserDto userDto);

    /**
     * 用户短信验证码登录
     * @param userDto
     * @return
     */
    AjaxResult smsLogin(UserDto userDto);

    /**
     * 后台登录
     * @param userDto
     * @return
     */
    AjaxResult backstageLogin(UserDto userDto);

}
